<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>分支结构01</title>
	</head>
	<body>
		<input type="text" placeholder="请输入年龄"  id="i1"/>
		<button onclick="age()">判断</button>
		<input type="text"  placeholder="性别" id="i2"/>
		<button onclick="sex()">判断</button>
		<input type="text" placeholder="年份" id="i3"/>
		<button onclick="year()">判断</button>
		<!--<input type="text" placeholder="年份" id="i3"/>
		<botton onclick="leapyear()">判断年份</botton>-->
		<input type="text" placeholder="" id="num1"/>
		<input type="text" placeholder="" id="num2"/>
		<button onclick="twonumber()">判断</button>
		<input type="text" id="t1"/>
		<input type="text" id="t2"/>
		<input type="text" id="t3"/>
		<button onclick="threenumber()">比较三个数大小</button>
		<input type="text" id="d"/>
		<button onclick="degree()">判断</button>
		<script type="text/javascript">
			/*
			 * 程序运行的三大结构:
			 * 1.顺序结构  代码从上至下一次执行，不重不漏.
			 * 2.分支结构  根据不同的情况执行不同的代码.
			 * 3.循环结构  重复执行某部分代码.
			 */
			
			/*
			 * 1.if语句
			 * 2.switch...case语句
			 */
			
			/*
			 * 表达式:由常量,变量,运算符组成的式子.
			 * 表达式必须有结果.
			 */
			
			/*
			 * if语句第一种写法
			 * if(条件表达式,也可以填其他表达){
			 * 	
			 * }
			 * 如果条件表达式为真,执行大括号里的代码,如果为假,跳过整个大括号,执行后面的代码.
			 */
			
			//练习1  输入年龄，判断是否成年
			function age(){
				//1.获取input
				var i1 = document.getElementById("i1");
				//2.获取input的value值
				//获取一个元素的属性,语法:元素.属性名
				var i1V = i1.value;
				console.log(i1V);
				//3.判断
				if (i1V - 0  >= 18) {
					alert("去上网吧");
				}
				if (i1V - 0  < 18) {
					alert("出门右拐新华书店");
				}
			}
//			练习2  输入性别,如果输入的是小写字母"m",弹出男,如果输入的是小写字母"w",弹出女
//			function sex(){
//			var s1 = document.getElementById("s1");
//			var s1S = s1.value;
//			console.log(s1S);
//		    var s2 = document.getElementById("s2"); 
//		    var s2S = s2.value;
//		    console.log(s2S);
//			if (s1S = "m") {
//				alert("男");
//			}
//				if (s2S = "w") {
//				alert("女");
//			}
            function sex(){
                var i2 = document.getElementById("i2");
                var i2V = i2.value;
                //用等号不行的
                if (i2V == "m") {
		          alert("男");
		        }
				if (i2V == "w") {
				alert("女");
		        }           
			}
            //练习3  判断年份是否是闰年
            //判断条件  能被400整除  或者  能被4整除但不能被100整除
            function year(){
            	    var i3 = document.getElementById("i3");
                var i3V = i3.value;
                if ((i3V % 400 ==0) || (i3V % 4 == 0 && i3V % 100 != 0 )) {
                	    alert("闰年");
                }
            }
//          function leapyear(){
//          	    var year = document.getElementById("i3").value - 0;
//              if ((i3V % 400 ==0) || (i3V % 4 == 0 && i3V % 100 != 0 )) {
//              	    alert(year + "年是闰年");
//              }
//          }
			//从输入框里获取的value值是字符串类型
			
			
			/*
			 * 2.if语句的第二种形式:
			 * if(条件表达式){
			 * 	代码1...
			 * }else{
			 * 	代码2...
			 * }
			 * 条件表达式为真,执行第一个大括号里的代码,为假,执行第二个大括号里的代码.
			 */
			
			//练习4  输入两个数,通过判断把较大的数赋值给变量max,并输出max的值.
			function twonumber(){
			   var n1 = document.getElementById("num1").value - 0;
               var n2 = document.getElementById("num2").value - 0;
                var max;
				if (n1 > n2) {
					max = n1;				
				}else{
					max = n2;
				}
				alert(max);
			}
			//字符串比较大小时实际上是在比较字符串对应位置上字符的ASCII码对应的十进制数的大小.
			//系统只会在值的数据类型不同时才有可能尝试进行隐式转化,数据类型相同,不转化.if语句里0、字符串、NAN、null、undefined都要隐式转化
			
			//练习5  输入三个数,求最大值
			function threenumber(){
				var n1 = document.getElementById("t1").value - 0;
				var n2 = document.getElementById("t2").value - 0;
				var n3 = document.getElementById("t3").value - 0;
				
				if (n1 > n2) {
					if (n1 > n3) {
						alert(n1);
					}else{
						alert(n3);
					}
				}else{
					if (n2 > n3) {
						alert(n2);
					}else{
						alert(n3);
					}					
				}
			}
			/*
			 * 三目运算符 ? :
			 * 条件表达式 ? 表达式1 : 表达式
			 */
//			var a = 5,b = 10,max;
//			max = a > b ? a : b;

             /*
              *   var a = 5,b = 10,c,twonumber,threenumber;
                  twonumber = a > b ? a : b;
                  threenumber = a > b ? (a > c ？a : c) : (b > c ? b : c)
              */
             
             /*
              * 3.if语句的第三种形式
              * if(条件表达式1){
              * 	    语句1...
              * }else if(条件表达式2){
              *     语句2...
              * }else{
              * 	    语句3...
              * }
              * else..if语句理论上可以无限增加
              *如果条件表达式1成立,执行语句1,否则判断表达式2是否成立,
               如果成立,执行语句2,依次类推,如果所有表达式都不成立,最后进else.
              */
             //练习6  输入成绩并评级 60分以下不及格,[60，70) 中,[70，80) 良
             //       [80，90) 优 90以上 厉害
             function degree(){
             	var d = document.getElementById("d").value - 0;
             	console.log(d);
             	if (d < 60) {
             		alert("不及格");
             	}else if(d < 70){
             		alert("中");}
             		else if(d < 80){
             		alert("良");}
             		else if(d < 90){
             		alert("优");}
             	else{
             		if (degree <= 100 && typeof degree == "number") {
                    	   alert("厉害");
                    }else {
                        alert("输入不合法");
             	}
             }
            } 
            
//          function degree(){
//			var i1V = document.getElementById("i1");
//			var i1V = i1V.value - 0;
//			if (i1V < 60) {
//				alert("不及格");
//				}else if (i1V >= 60 && i1V < 70) {
//					alert("中");
//				} else if(i1V >= 70 && i1V < 80){
//					alert("良");
//				}else if(i1V >= 80 && i1V < 90){
//					alert("优");
//			} else {
//				alert("厉害");
//			}
//		}
             
		</script>
	</body>
</html>
